{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Constructing a NEP dipole model\n",
    "## Introduction\n",
    "\n",
    "In this tutorial, we will show you how to use the ``GPUMD`` package to train a NEP dipole model and analyze the results.\n",
    "For theoretical background on the NEP approach, please read the [documentation](https://gpumd.org/potentials/nep). A paper that introduces the NEP dipole model systematically is in preparation.\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Prerequisites\n",
    "You need to have access to an NVIDIA GPU with compute capability >= 3.5. Besides it, CUDA Toolkit 9.0 or higher is needed to compile the GPUMD package.\n",
    "The latest GPUMD (we recommend v3.7 or newer) can be downloaded [here](https://github.com/brucefan1983/GPUMD/releases). Unpack it, go to the ``src`` directory, and run the command ``make -j`` to compile. If success, you should get two executables: ``gpumd`` and ``nep`` in the ``src`` directory. The flag \"-std=c++14\" in makefile can be modified to \"-std=c++11\" if you failed the compilation process."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Train a NEP dipole model for QM7B database\n",
    "To train a NEP dipole model, two files: ``train.xyz`` and ``nep.in`` are mandatory. The ``train.xyz`` file contains necessary training data, and the `nep.in` file contains some parameters used for training. Optionally, one can also provide a ``test.xyz`` file that has similar contents as the``train.xyz`` for validation.\n",
    "\n",
    "### Prepare the train.xyz and test.xyz files\n",
    "- The ``train.xyz``/``test.xyz`` file should be prepared according to the [documentation](https://gpumd.org/nep/input_files/).\n",
    "- In this tutorial, ``train.xyz`` and ``test.xyz`` files are already prepared in the current folder, which contain 5768 and 1443 structures, respectively. Structures as well as dipole data in the ``train.xyz`` and ``test.xyz`` are taken from the [QM7B database](https://archive.materialscloud.org/record/2019.0002/v2) that contains 7211 organic compounds.The dipole data are embedded in the comment lines of ``train.xyz``/``test.xyz``, organized as *dipole=\"$\\mu_{x}$ $\\mu_{y}$ $\\mu_{z}$\"* per structure. The dipole data were computed at the CCSD/d-aug-cc-pVDZ level of theory by [Yang and collaborators](https://www.nature.com/articles/s41597-019-0157-8). Of course, you can use any quantum mechanics package and any theoretical method such as the DFT to calculate the total dipole moment. However, structures in [QM7B database](https://archive.materialscloud.org/record/2019.0002/v2) are without lattice information, which is mandatory in the training of NEP models. Therefore, a cubic box with a dimension of 100 $\\rm \\mathring{A}$ was set for every structure. We recommend the [ASE package](https://wiki.fysik.dtu.dk/ase/) to manipulate the ``train.xyz``/``test.xyz`` file.   "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Prepare the `nep.in` file. \n",
    "- First, read the [documentation](https://gpumd.org/nep/input_files/) regarding input paramaters carefully. The most important parameter is `model_type`, which controls the training types. `model_type=0`, which is the default, stands for a training task of PES;`model_type=1`, a training task of dipole; `model_type=2`, a training task of polarizability. Here, we set `model_type=1`.     \n",
    "A minimal ``nep.in`` file reads:\n",
    "```\n",
    "type        6 H C N O S Cl\t\n",
    "model_type        1\n",
    "```\n",
    "The parameter `type` is also important, which specified the element kinds in the system. The first value `6` is the number of elements in ``train.xyz``/``test.xyz``, followed by the detailed element names, in this case, `H C N O S Cl`. **The order will be frozen in the model after training.** We have prepared the ``nep.in`` file in the current folder, which reads:\n",
    "```\n",
    "type        6 H C N O S Cl\t\n",
    "model_type        1\n",
    "cutoff       6 4\n",
    "n_max       6 6\n",
    "basis_size   10 10\n",
    "l_max       4 2 1\n",
    "neuron      10\n",
    "population   80\n",
    "batch       10000\n",
    "generation   200000\n",
    "lambda_1    0.001\n",
    "lambda_2    0.001\n",
    "```\n",
    "\n",
    "The values of parameters `cutoff`, `n_max`,`basis_size`,`l_max`, `neuron`,`population` used here were tested elaborately, which achieved a good balance between the accuracy and costs. The batch size depends on your GPU device. On a GeForce RTX 3090 with 24 GB memory, you can train the model with all data at the same time, therefore, we set `batch ` a value greater than 5768. The `lambda_1` and `lambda_1` are the [regularization paramaters](https://gpumd.org/nep/input_parameters/lambda_1.html). You can **take the default values trustingly just ignore these two parameters.** The `GPUMD` will adjust these two parameters dynamically according to the real-time loss. Alternatively, you can set  lambda_1 and lambda_2 a fixed value which should be of the [same order as the target quantities]((https://gpumd.org/nep/input_parameters/lambda_1.html)) upon convergence. In this example, we set `lambda_1=lambda_2=0.001`.We will look back on it after analyzing the results.\n",
    " \n",
    " "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Run the ``nep`` executable\n",
    " - Run the following command in the working directory\n",
    "```\n",
    "path/to/nep # if you use linux\n",
    "path\\to\\nep # if you use Windows\n",
    "```\n",
    " \n",
    "It took about 22 hours to run 200,000 generations using a GeForce RTX 3090. One can kill the task at any time and also restart it just by running the `nep` again."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Check the training results\n",
    "\n",
    "- After you launch the `nep` task, there should be some output on the screen. We encourage the user to read the screen output carefully. It can help to understand the working flow of `nep`. \n",
    "- Some files will be generated in the current folder and will be updated every 100 generations (some will be updated every 1000 generations). Therefore, one can check the results even before finishing the maximum number of generations as set in `nep.in`. \n",
    "- If the user has not read the documentation regarding the output files, it is time to read about those [here](https://gpumd.org/nep/output_files/).\n",
    "- We will use Python to visualize the results in some of the output files next. We first load ``pylab`` that we need."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "from pylab import *"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Checking the ``loss.out`` file\n",
    "- We see that the $\\mathcal{L}_1$ and $\\mathcal{L}_2$ regularization loss functions first increases and then decreases, which indicates the effectiveness of the regularization.\n",
    "- The dipole loss is the root mean square error (RMSE) of dipole per atom, which converges to about 0.001-0.003 a.u./atom."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {
    "scrolled": false
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "loss = loadtxt('loss.out')\n",
    "loglog(loss[:, 1:4])\n",
    "loglog(loss[:, 4:6])\n",
    "xlabel('Generation/100')\n",
    "ylabel('Loss')\n",
    "legend(['Total', 'L1-regularization', 'L2-regularization', 'Dipole-train', 'Dipole-train'])\n",
    "tight_layout()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "The loss terms 'Dipole-train' and 'Dipole-train' converged after 20,000 generations. That's why we choose the paramaters `lambda_1=lambda_2=0.001`. But you can **take the default values trustingly**."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Checking the `dipole_test.out` file"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "The `dipole_test.out` is organized as \"$\\mu_{x}$ $\\mu_{y}$ $\\mu_{z}$ $\\mu_{x}$ $\\mu_{y}$ $\\mu_{z}$\", one line per structure. The first three values are predicted by `NEP`, while the last three values are the references we provide in `test.xyz`(but divided by the number of atoms)."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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Jxw7dowPP/yQ6Ohoxo4de8vv/VY2btxIzZo1qVWr1h1fqzCRxCBuasyYMXz22WecPn2aF154gblz5zJ//nxCQ0N58MEHmT9/PiEhIdnWL1asGL///jvVqlWje/fu1K9fn+eee46UlJSbtgRut15ms2fP5sknn+TFF1+kXr16DBw40DGks1KlSvzxxx/YbDbat2/P3XffzciRIwkKCkKnc/2fRsuWLZk7dy7Tp0+nSZMm/Prrr7z++uu3jKNt27bcddddtG7dmqeffppOnTo5hvMCTJ48mR49ehAREUHTpk3566+/WLVqFaVKlXJ5vUaNGrFhwwaOHTvGAw88QFhYGG+88YbTI7COHTtiMBj47bffHMfeeOMNmjZtSvv27WnTpg0VKlSga9euTtdOTEx06sepX78+s2bNYubMmTRu3Jjt27dnuSmbTCaOHDnieL98+XK6dOniVObzzz/n8uXLhIWFERER4Riem9EHH3zA6tWrqVq1quOv+K5duzJ16lTee+89GjZsyJw5c/jiiy9o06ZN9l94Dn3zzTdOfWYijez5LISX9e/fnytXruTajN6MZs2axY8//siqVaty7Xfu3r2bhx9+mAsXLmTpA8pP9u/fT9u2bTl69OhNB1AURdLHIEQhNmjQIC5fvszVq1dzbVkMq9XK9OnT83VSADh37hxfffWVJAUXpMUghJflZYtBiNshiUEIIYQT6XwWQgjhRBKDEEIIJ5IYhBBCOJHEIIQQwokkBiGEEE4kMQghhHAiiUEIIYQTSQxCCCGcSGIQQgjh5P8BuvIue+s3fhkAAAAASUVORK5CYII=\n",
      "text/plain": [
       "<Figure size 400x400 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "dipole_test = loadtxt('dipole_test.out')\n",
    "ref_values = np.hstack([dipole_test[:,3],dipole_test[:,4],dipole_test[:,5]])\n",
    "nep_values = np.hstack([dipole_test[:,0],dipole_test[:,1],dipole_test[:,2]])\n",
    "plot(ref_values,nep_values , '.')\n",
    "plot(linspace(dipole_test.min(),dipole_test.max()), linspace(dipole_test.min(),dipole_test.max()), '-')\n",
    "xlim((dipole_test.min(),dipole_test.max()))\n",
    "ylim((dipole_test.min(),dipole_test.max()))\n",
    "xlabel('Reference dipole(a.u./atom)')\n",
    "ylabel('NEP dipole (a.u./atom)')\n",
    "fig = plt.gcf()\n",
    "fig.set_size_inches(4,4)\n",
    "tight_layout()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Get molecular dipole moment"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Numbers of atoms are varied for different structures in the QM7B database. To get their molecular dipole moment, we should know their numbers of atoms. The following `Python` script can be used to obtain the molecular dipole moment for each structure in `test.xyz`."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[[-1.0092135  -0.4079592  -0.2488834  -1.0072993  -0.4016998  -0.2416006 ]\n",
      " [ 0.16071358  0.14740241 -0.2966058   0.13049999  0.14509993 -0.2988005 ]\n",
      " [-0.2512226   0.6660957   0.01369258 -0.2492999   0.6617998   0.02760001]\n",
      " ...\n",
      " [ 0.06124566  1.1426184  -0.1661898   0.06629994  1.1297006  -0.1766996 ]\n",
      " [-0.5868126   1.0639849  -0.00530762 -0.5317004   1.0760002  -0.0058    ]\n",
      " [ 0.5859885  -0.02764035 -1.081206    0.5616     -0.02710005 -1.0708005 ]]\n"
     ]
    }
   ],
   "source": [
    "import os\n",
    "file_size = os.path.getsize(\"test.xyz\")\n",
    "noa_list = []\n",
    "with open(\"test.xyz\") as reader:\n",
    "    while (reader.tell() < file_size):\n",
    "        noa = int(reader.readline())\n",
    "        noa_list.append(noa)\n",
    "        for i in range(noa+1):\n",
    "            reader.readline()\n",
    "\n",
    "atomic_dipole_test = loadtxt('dipole_test.out')\n",
    "            \n",
    "molecular_dipole = dipole_test * np.tile(np.array(noa_list).reshape(-1,1),(1,6))\n",
    "print(molecular_dipole)\n",
    "        "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Prediction\n",
    "- You can switch the workding mode from training to prediction by adding an extra parameter `prediction 1` in `nep.in`, and provide a `train.xyz`. In this mode, the dipole data is not necessary in `train.xyz`. The `NEP` will use `-1e+06` as the reference values in `dipole_train.out`. We also provide an example in the `prediction_new_molecule` directory.  "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Restart\n",
    "- After each 100 steps, the ``nep.restart`` file will be updated.\n",
    "- If ``nep.restart`` exists, it means you want to continue the previous training. Remember not to change the parameters related to the descriptor and the number of neurons. Otherwise the restarting behavior is undefined.\n",
    "- If you want to train from scratch, you need to delete ``nep.restart`` first (better to first make a copy of all the results from the previous training)."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Author"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Nan Xu\n",
    "\n",
    "tamas@zju.edu.cn"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.9.13"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
